package br.ceut.especializacao.poo.fornecedores;

import java.util.List;

import br.ceut.especializacao.poo.util.RepositorioException;

/***
 * 
 * @author Alan
 *
 */

public class CadastroFornecedores {
	
	private RepositorioFornecedores fornecedores;

	public CadastroFornecedores(RepositorioFornecedores repositorio) {
		this.fornecedores = repositorio;
	}

	public void cadastrar(Fornecedor fornecedor) throws FornecedorJaCadastradoException,
			RepositorioException {
		if (fornecedor != null) {
			if (!fornecedores.existe(fornecedor.getIdFornecedor())) {
				fornecedores.inserir(fornecedor);
			} else {
				throw new FornecedorJaCadastradoException(fornecedor.getIdFornecedor());
			}
		} else {
			throw new IllegalArgumentException();
		}

	}

	public void remover(int idFornecedor) throws FornecedorNaoEncontradoException,
			RepositorioException {
		fornecedores.remover(idFornecedor);
	}

	public boolean existe(int idFornecedor) throws RepositorioException {
		return fornecedores.existe(idFornecedor);
	}

	public List<Fornecedor> geFornecedores() {
		try {
			return fornecedores.getFornecedores();
		} catch (RepositorioException e) {
			e.printStackTrace();
		}
		return null;
	}

}
